Systems and methods for training and executing a recurrent neural network to determine resolutions

ABSTRACT

Disclosed are methods, systems, and non-transitory computer-readable medium for training and using a neural network for subcluster classification. For example, a method may include receiving or generating a plurality of user data sets of users, grouping the plurality of user data sets into one or more clusters of user data sets, grouping each of the one or more clusters into a plurality of subclusters, training the neural network for each of the plurality of subclusters to associate the subcluster with sequential patterns found within the subcluster in order to generate a trained neural network, receiving a first series of transactions of a first user, inputting the first series of transactions into the trained neural network, and classifying the first user into a subcluster of the plurality of subclusters based on the first series of transactions of the first user input into the trained RNN.

TECHNICAL FIELD

Various embodiments of the present disclosure generally relate totraining and executing a neural network for determining uniqueresolutions for a user, and more particularly, to uniquely training arecurrent neural network to associate user groups with transactionpatterns and using the trained recurrent neural network to automaticallygenerate user-specific resolutions to an individual user.

BACKGROUND

One frequently collected sequential flow of data may be electronictransactions of consumers. When an individual engages in electronictransactions (e.g., via use of credit card technologies, mobile pay,online payment accounts, etc.) throughout a given period of time, thetransaction data for the particular individual is collected, monitored,and stored sequentially, at a server of the issuer of the transactioninstrument. Thus, such a server may leverage the vast amount ofsequentially stored transaction data in electronic repositories, toprovide intelligent, electronically generated feedback in an automatedenvironment. Especially with artificial neural networks (e.g., RNN)having capabilities to be trained on sequential inputs, it is highlydesirable for a server to practically apply machine learning, torecognize patterns in consumer spending behaviors, and provide feedbackaccordingly.

The background description provided herein is for the purpose ofgenerally presenting the context of the disclosure. Unless otherwiseindicated herein, the materials described in this section are not priorart to the claims in this application and are not admitted to be priorart, or suggestions of the prior art, by inclusion in this section.

SUMMARY OF THE DISCLOSURE

According to certain aspects of the disclosure, systems and methods aredisclosed to train and execute a neural network (e.g., RNN) to determineresolutions.

In one embodiment, a computer-implemented method is disclosed fortraining and using a neural network for subcluster classification. Thecomputer-implemented method may comprise: receiving or generating, byone or more processors, a plurality of user data sets of users, whereineach user data set in the plurality of user data sets comprises a useridentification data of a user and a detailed user data of the user;grouping the plurality of the user data sets, by the one or moreprocessors, into one or more clusters of user data sets; grouping, bythe one or more processors, each of the one or more clusters into aplurality of subclusters; for each of the plurality of subclusters,training the neural network, by the one or more processors, to associatethe subcluster with one or more sequential patterns found within thesubcluster, based on one or more user data sets in the subcluster of theplurality of user data sets, to generate a trained neural network;receiving a first series of transactions of a first user; inputting, bythe one or more processors, the first series of transactions into thetrained neural network; and classifying, using the trained neuralnetwork, by the one or more processors, the first user into a subclusterof the plurality of subclusters to identify a classified subcluster ofthe first user, based on the first series of transactions of the firstuser input into the trained neural network.

In accordance with another embodiment, a computer system is disclosedfor training and using a recurrent neural network for subclusterclassification. The computer system may comprise: a memory havingprocessor-readable instructions stored therein; and at least oneprocessor configured to access the memory and execute theprocessor-readable instructions, which when executed by the processorconfigures the processor to perform a plurality of functions, includingfunctions for: receiving or generating a plurality of user data sets,wherein each user data set of the plurality of user data sets comprisesa user identification data of a user and a detailed user data of theuser; grouping the plurality of the user data sets into one or moreclusters of user data sets; grouping each of the one or more clustersinto a plurality of subclusters; and for each of the plurality ofsubclusters, training the recurrent neural network to associate thesubcluster with one or more sequential patterns found within thesubcluster, based on the user data sets in the subcluster, to generate atrained recurrent neural network.

In accordance with another embodiment, a computer-implemented method isdisclosed for training and using a neural network to determine relevantresolutions. The computer-implemented method may comprise: receiving orgenerating, by one or more processors, a plurality of user data sets,wherein each user data set of the plurality of user data sets comprisesa user identification data of a user and a detailed user data of theuser; removing, by the one or more processors, personally identifiableinformation from each of the plurality of user data sets; grouping theplurality of the user data sets, by the one or more processors, into oneor more clusters of user data sets; grouping, by the one or moreprocessors, each of the one or more clusters into a plurality ofsubclusters; for each of the plurality of subclusters, training, by theone or more processors, a neural network to associate the subclusterwith one or more sequential patterns found within the subcluster, basedon the user data sets in the subcluster, to generate a trained neuralnetwork; receiving, by the one or more processors, a first series oftransactions of a first user; inputting, by the one or more processors,the first series of transactions into the trained neural network;classifying, using the trained neural network, by the one or moreprocessors, the first user into a subcluster among the plurality ofsubclusters, based on the first series of transactions input into thetrained neural network, to generate a classified subcluster of the firstuser; based on the classified subcluster of the first user, determining,by the one or more processors, whether a model user associated with thefirst user should be identified; based on the determination of whetherthe model user associated with the first user should be identified,searching, by the one or more processors, the plurality of user datasets for the user data set of the model user, wherein the user data setof the model user (i) is grouped into one of one or more modelsubclusters, wherein the one or more model subclusters is predeterminedto be model subclusters among the plurality of subclusters, and (ii)comprises a second series of transactions having one or moretransactions with identical attributes, compared to attributes of one ormore transactions of the first series of transactions; based on both thefirst series of transactions and the second series of transactions,generating, by the one or more processors, an indicator of a resolutionassociated with the first series of transactions; converting, by the oneor more processors, the indicator into a natural language statement; anddisplaying, by the one or more processors, the natural languagestatement on a device associated with the first user.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of this specification, illustrate various exemplary embodiments andtogether with the description, serve to explain the principles of thedisclosed embodiments.

FIG. 1 depicts an example environment in which methods, systems, andother aspects of the present disclosure may be implemented.

FIG. 2 depicts a flowchart of an exemplary method for generating acustomized training dataset for an RNN and training the RNN using thetraining dataset, according to one or more embodiments.

FIG. 3 depicts a flowchart of an exemplary method for receiving a seriesof transactions of a first user, using the trained RNN to classify thefirst user in to a cluster, conditionally finding a model user, andproviding a resolution to the first user based on the model user,according to one or more embodiments.

FIG. 4A depicts an example scheme of how users may be grouped intoclusters and subclusters, according to one or more embodiments.

FIG. 4B depicts an example scheme of how subclusters may bepredetermined to be model subclusters, according to one or moreembodiments.

FIG. 5 depicts an exemplary computer device or system, in whichembodiments of the present disclosure, or portions thereof, may beimplemented.

DETAILED DESCRIPTION OF EMBODIMENTS

The following embodiments describe systems and methods for training andexecuting a neural network such as, for example, a RNN, to determineresolutions. A specifically customized training of RNNs, combined withpractical application of the respectively trained RNNs for providinguser-specific feedback, are unconventional and innovative automationswhich necessarily achieve technological improvements through thespecific process described more in detail below, in a sharp contrast tomerely providing a well-known or routine environment for performing amanual or mental task. While RNNs are referenced throughout theapplication, alternative neural networks or decision support tools maybe used. For example, any one or more of a convolutional neural network(CNN), a regional convolutional neural network (R-CNN), and/or adecision tree may be used without departing from the scope of thedisclosure.

Many users of transaction instruments for electronic transactions (e.g.,credit card technologies, mobile pay systems, online payment accounts,etc.) often make poor financial decisions such as impulsive purchases,serial purchases under hampered judgments (e.g., excessive gambling oralcohol consumption), or incurring of unnecessary expenses (e.g.,penalties for failure to pay minimum balance(s)). According to aspectsof the present disclosure, a unique subcluster-based training of an RNNmay allow an issuer of a transaction instrument to use the trained RNNto dynamically, automatically, and accurately recognize usersdemonstrating poor financial decisions. If an observed user isclassified by the RNN to be in a category characterized by poorfinancial decisions, one or more embodiments of the present disclosuremay find a model user with similar historical behaviors from thetraining data set, and provide a unique resolution for the observed userbased on an analysis of attributes of the observed users and the modeluser. Advantageously, such a resolution may be an automated,user-specific feedback, as described in more detail below.

The subject matter of the present description will now be described morefully hereinafter with reference to the accompanying drawings, whichform a part thereof, and which show, by way of illustration, specificexemplary embodiments. An embodiment or implementation described hereinas “exemplary” is not to be construed as preferred or advantageous, forexample, over other embodiments or implementations; rather, it isintended to reflect or indicate that the embodiment(s) is/are “example”embodiment(s). Subject matter can be embodied in a variety of differentforms and, therefore, covered or claimed subject matter is intended tobe construed as not being limited to any exemplary embodiments set forthherein; exemplary embodiments are provided merely to be illustrative.Likewise, a reasonably broad scope for claimed or covered subject matteris intended. Among other things, for example, subject matter may beembodied as methods, devices, components, or systems. Accordingly,embodiments may, for example, take the form of hardware, software,firmware, or any combination thereof (other than software per se). Thefollowing detailed description is, therefore, not intended to be takenin a limiting sense.

Throughout the specification and claims, terms may have nuanced meaningssuggested or implied in context beyond an explicitly stated meaning.Likewise, the phrase “in one embodiment” as used herein does notnecessarily refer to the same embodiment and the phrase “in anotherembodiment” as used herein does not necessarily refer to a differentembodiment. It is intended, for example, that claimed subject matterinclude combinations of exemplary embodiments in whole or in part.

The terminology used below may be interpreted in its broadest reasonablemanner, even though it is being used in conjunction with a detaileddescription of certain specific examples of the present disclosure.Indeed, certain terms may even be emphasized below; however, anyterminology intended to be interpreted in any restricted manner will beovertly and specifically defined as such in this Detailed Descriptionsection. Both the foregoing general description and the followingdetailed description are exemplary and explanatory only and are notrestrictive of the features, as claimed.

In this disclosure, the term “based on” means “based at least in parton.” The singular forms “a,” “an,” and “the” include plural referentsunless the context dictates otherwise. The term “exemplary” is used inthe sense of “example” rather than “ideal.” The term “or” is meant to beinclusive and means either, any, several, or all of the listed items.The terms “comprises,” “comprising,” “includes,” “including,” or othervariations thereof, are intended to cover a non-exclusive inclusion suchthat a process, method, or product that comprises a list of elementsdoes not necessarily include only those elements, but may include otherelements not expressly listed or inherent to such a process, method,article, or apparatus. Relative terms, such as, “substantially” and“generally,” are used to indicate a possible variation of ±10% of astated or understood value.

Referring now to the appended drawings, FIG. 1 shows an exampleenvironment 100, according to one or more embodiments of the presentdisclosure. As shown, system environment 100, may include a network 102,an issuer server 104, an issuer database 106, a user 108, apoint-of-sale (POS) system 110, and a user device 112.

The POS system 110 may be a hardware POS device at a physical location,such as a store, a restaurant, a transaction booth, a transaction cart,a food truck, an office, a place of residence, a vending machine, agaming establishment, or any other physical location where purchase ofgoods or services may take place by a user 108 via an electronictransaction. The POS system 110 also may be a portable device carried bya merchant, a seller, a sales agent, or a delivery agent, which reads,accepts, or validates an electronic transaction, such as a credit cardreader, a mobile payment reader, a payment processing application, orany other portable device serving the purpose of accepting and/orprocessing payments for commerce of goods or services. Additionally, oralternatively, the POS system 110 may be a virtual or online POS systemfor allowing a user 108 to engage in an electronic commerce transactionon a user device 112 over a network 102.

User 108 may engage in an electronic transaction with the POS system 110in various ways. For example, user 108 may hand over a transactioninstrument (e.g., a credit card, a debit card, etc.) to an operator ofthe POS system 110, initiate contact of the transaction instrument withthe POS system 110 (e.g., by swiping, tapping, or inserting thetransaction instrument), initiate contact of a user device 112 (e.g., amobile phone) executing a mobile pay application to a POS system 110,connect a user device 112 executing a mobile pay application to POSsystem 110 via a near field communication (NFC) (e.g., contactlesstransaction instrument reader), or engage in an electronic transactionin any other manner which may allow the POS system 110 to directly orindirectly obtain information from the user's 108 transactioninstrument.

Once the POS system 110 obtains sufficient data necessary to complete aparticular transaction, the POS system 110 may transmit transaction datato the issuer server 104 over the network 102. This transmission of thetransaction data to the issuer server 104 over network 102 may be adirect transmission or an indirect transmission (e.g., an initialtransmission to an intermediary such as a card association system,followed by the intermediary transmitting at least a part of the data tothe issuer server 104). The transaction data transmitted to the issuerserver 104 may include any data received and/or generated by the POSsystem 110 during the transaction. For example, the transaction data mayinclude a time stamp of the transaction, an identification of one ormore merchants associated with the transaction, an identification of oneor more purchasers associated with the transaction, an identification ofone or more transaction instruments used in the transaction, an amountof fiscal resources expended for the transaction, and/or any other datarelevant to the transaction and the POS system 110.

After collecting the transaction data, the issuer server 104 may recordand store the transaction data in the issuer database 106. In systemenvironment 100, the POS system 110 may transmit a separate transactiondata for each transaction, and the issuer server 104 may, in turn,receive and store each individual transaction data separately for eachrespective transaction. Handling each transaction data as separateentries may not only serve the purpose of providing the most accuratefiscal accounting for the user, but also prepare the most effective andaccurate data sets for the RN N's training and classification tasksdescribed in more detail below.

In one or more embodiments, the issuer server 104 and the issuerdatabase 106 may be one server computer device and a single database,respectively. Alternatively, in one or more embodiments, the issuerserver 104 may be a server cluster, or any other collection or networkof a plurality of computer servers. The issuer database 106 also may bea collection of a plurality of interconnected databases. The issuerserver 104 and the issuer database 106 may be components of one serversystem. Additionally, or alternatively, the issuer server 104 and theissuer database 106 may be components of different server systems, withthe network 102 serving as the communication channel between them.

FIG. 2 depicts a flowchart of an exemplary method 200 for generating acustomized training data set for an RNN, and training the RNN using thetraining data set. In method 200, the issuer server 104 may firstreceive or generate a plurality of user data sets in an issuer database106 (Step 205). Each user data set may comprise a user identificationdata of a user and a detailed user data of the user. For example, if auser data set corresponds to a data set of a particular credit cardaccount of a first user, the user data set may include an identificationof the first user (e.g., the full name, an address, or a uniqueidentifier of the first user, an account identification, or anycombination thereof), as well as a detailed user data (e.g., individualtransactions made or authorized by the first user). In one or moreembodiments, the detailed user data of each of the user data sets maybe, for example, a collection of transaction data transmitted to theissuer server 104 from the POS system 110, pertaining particularly tothe user account represented by the user data set.

In one or more embodiments, the plurality of user data sets in issuerdatabase 106 may be anonymized and/or sanitized by removing,obfuscating, or converting all personally identifiable information fromall of the user data sets. Personally identifiable information may beany data attribute subject to protection as defined by a predeterminedcriteria, and may include, for example, name, social security number,credit card number, expiry date information, email address, accountnumber, an identifier of users associated with an account, an identifierof an account, contact information, or any other piece of informationthat is specific to the identity of the user or the user's account. Inone or more embodiments, the plurality of user data sets may beanonymized by filtering the plurality of user data sets through a datafiltering system which detects user data sets with personallyidentifiable information based on predetermined conditions, and removesand/or replaces the personally identifiable information. The personallyidentifiable information, though removed and/or blinded, may still belinked to the plurality of user data sets. The personally identifiableinformation may be stored in case the information is needed to verify auser or to comply with federal or other applicable law. For example,when the user securely logs onto the issuer server 104 for access to hisor her own account, the issuer server 104 may access the user's name,address, social security number, birth date, or other personallyidentifiable information to verify that a valid user is accessing theinformation. The removed or blinded personally identifiable informationmay be placed in the same server as the server storing the anonym izedand/or sanitized user data sets. If a system administrator of the issuerserver 104 chooses, the personally identifiable information may beplaced in a separate server for greater security.

Referring back to FIG. 2, the plurality of user data sets may then begrouped into clusters (Step 210). The grouping may be achieved by aclustering or classification of the user data sets, with one or morepredetermined criteria as the parameters for grouping the user datasets. The predetermined criteria for grouping may include, for example,one or more of annual income, education level, family size, jobcategory, or any other criteria which represents a user classindependent of quality metrics of fiscal decisions. That is, thegrouping operation of Step 210 may group users into one or morecategories (e.g., socio-economic classes) without regard to user'sfiscal decision behavior qualities. For example, in the exemplary schemedepicted in FIG. 4A, classified cluster 421 may represent “all userswith annual income greater or equal to $100,000.” As shown, cluster 421may include both users with credit scores at or above 700, and userswith credit scores below 700.

In some implementations, the grouping operation of Step 210 may occurusing any measurement of similarity among the users, as long as thegrouping is based on a criteria that is independent of fiscal decisionbehavior qualities. For example, users grouped into the same cluster mayhave a similar income level (e.g., incomes within a range of income),such that predictions can be made on attributes of a particular userbased on data corresponding to other users in the same cluster. For thepurpose of grouping in Step 210, any clustering algorithm that groupsdata sets based on a clustering criteria may be used. For implementing aclustering algorithm, the clustering data space may be defined as, forexample, an n-dimensional space having an axis for each of theclustering criteria. For example, Step 210 may be implemented using aclassical K-means clustering algorithm. Alternatively, Step 210 may beimplemented using a more complex algorithm aiming for enhanced modelingresults, such as, for example, a Density-Based Spatial Clustering ofApplications with Noise (DBSCAN) approach.

After grouping into clusters, each cluster may then be grouped into aplurality of subclusters (Step 215). This grouping operation may beachieved by clustering or classification of the user data sets withineach cluster, with one or more predetermined criteria as the parametersfor grouping the user data sets. The predetermined criteria for groupingmay include one or more of credit score, an account balance, availablecredit, percentage of credit used of users in each of the one or moreclusters, or any other metrics which indicates a quality of fiscaldecisions made by the user. The use of these metrics as classificationcriteria may result in multiple ranges of users within a particularcluster, including a range of users with higher quality metrics relatingto fiscal decisions, in addition to one or more other ranges of userswithin the cluster with lower quality metrics relating to fiscaldecisions, as will be described in further detail below. For example, asnoted above, in the exemplary scheme depicted in FIG. 4A, classifiedcluster 421 may represent “all users with annual income greater or equalto $100,000.” Additionally, cluster 421 may include a subcluster ofusers 411 with credit scores at or above 700, and may include asubcluster of users 412 with credit scores below 700. In this example,subcluster 411 may be indicative of users with higher quality metricsrelating to fiscal decisions, while subcluster 412 may be indicative ofusers with lower quality metrics relating to fiscal decisions.

In some implementations, the grouping operation of Step 215 may occurusing any measurement of similarity among the users, as long as thegrouping of subclusters is based on a criteria associated with theusers' quality of fiscal decisions (e.g., spending behavior). Forexample, with use of a Dynamic Time Warping (DTW) algorithm whichcompares sequences of different time-series data having different timeinstance and time interval, a dynamically customized clusteringcriteria, which incorporates the similarity of users' spendingbehaviors, may be determined. For the purpose of subcluster grouping inStep 215, any clustering algorithm that groups data sets based on aselected criteria may be used. For implementing such a clusteringalgorithm, the clustering data space may be defined as, for example, ann-dimensional space having an axis for each of the subclusteringcriteria. For example, Step 215 may be implemented using a classicalK-means clustering algorithm. Alternatively, Step 215 may be implementedusing a more complex algorithm aiming for enhanced modeling results,such as, for example, a Density-Based Spatial Clustering of Applicationswith Noise (DBSCAN) approach.

After the plurality of user data sets are grouped into subclusters, oneor more of the subclusters may be recorded (e.g., stored, set,established, etc.) as model subclusters. The metrics used for groupingsubclusters may serve as the basis for selecting model subclusters. Oneor more subclusters with metrics that are higher than predeterminedthresholds may be selected as model subclusters. For example, as shownin the exemplary grouping scheme depicted in FIG. 4B, subclusters 441and 442 may be recorded as model subclusters because they both representusers with credit scores (e.g., one or more metrics) being higher than700 (e.g., a predetermined threshold for selecting model subclusters).The selection of model subclusters may be recorded in issuer database106, or any other memory device accessible by issuer server 104.

Referring back to FIG. 2, after all user data sets are grouped intosubclusters, an RNN may be trained based on the subclusters (Step 220).As described above with respect to Step 205, each user data set mayinclude detailed user data, and the detailed user data may be acollection of transaction data transmitted to the issuer server 104 fromthe POS system 110, pertaining particularly to the user accountrepresented by the user data set. Thus, a collection of a particularuser's transaction data represents a history of purchase decisions madeby the user, in a time-based sequence. Each subcluster may be providedas a training data set for the RNN, and the training data set mayinclude at least the detailed user data of each user data set in thesubcluster. Based on the training of the RNN, the RNN may associate eachsubcluster with one or more sequential patterns found within thesubcluster.

The RNN being trained in Step 220 may be any type of RNN which can usean internal state (e.g., memory) to process sequences of inputs from thecollection of transaction data of each user. In some implementations,LSTM may be the type of neural network used for the training of themodel (e.g., Step 220) and the subsequent user classification (e.g.,Step 315 as described in more detail below) in accordance with one ormore embodiments of the present disclosure. For example, in a particulariteration of training and/or subsequent classification operations, anLSTM may compare two sequences of data, where each of the two sequencesmay have its own time-stamped data points. The data points in a givensequence may be fiscal transactions of the particular user to whom thesequence corresponds. For example, a first sequence may have four largetime-stamped transactions (e.g., $100, $39, $90, and $40), and atrespective time stamps sufficiently similar (e.g., within a thresholdrange) to these four transactions, a second sequence may also have fourlarge, similar transactions (e.g., $98, $40, $85, and $35). In addition,the first sequence and the second sequence may both have smaller (e.g.,smaller below a threshold) transactions, at disparate time stamps. Aftercomparing these two sequences, the LSTM may output that the firstsequence and the second sequence are matched successfully (e.g.,belonging to the same subcluster, for the purpose of training a modeland/or classifying a user), because of the similarity of the largetransactions being considered and the dissimilarity of the smallertransactions being neglected. The RNN, such as the LSTM described by wayof example above, may be stored in the issuer server 104, the issuerdatabase 106, or any other memory device accessible by the issuer server104.

FIG. 3 depicts a flowchart of an exemplary method 300 for receiving aparticular series of transactions of a first user, using the trained RNNto classify the first user into a cluster, conditionally finding a modeluser, and providing a resolution to the first user based on the modeluser, according to one or more embodiments.

First, method 300 may begin with the issuer server 104 dynamicallyreceiving a series of transactions, e.g., a first series oftransactions, associated with a specific user, e.g., a first user (Step305). In one or more embodiments, the process of dynamically receivingthe first series of transactions (e.g., Step 305) may be initiated andperformed independently of the process of preparing a training data setfor an RNN and training the RNN (e.g., the exemplary method 200 of FIG.2). For example, data collection for creation of a training data set forthe RNN may occur at predetermined time intervals at a RNN trainingsubsystem of the issuer server, while data collection of transactionsfor the purpose of creating resolutions for a first user may occurseparately at another independent subsystem (e.g., user resolutionsubsystem). Accordingly, the user resolution subsystem may use anyavailable previously trained RNN at the RNN training subsystem (e.g.,the RNN last trained by the RNN training subsystem). The RNN trainingsubsystem and the user resolution subsystem may both be subsystemsimplemented by the issuer server 104.

Alternatively, the process of receiving the first series of transactionsin accordance with Step 305, may be performed by the issuer server 104,only after issuer server 104 completely performs a full iteration of theRNN training process in accordance with, for example, exemplary method200 depicted in the flowchart of FIG. 2. Accordingly, the exemplarymethod 300 may only be performed after completion of a RNN trainingprocess, rather than, for example, allowing method 200 and method 300 torun independently of each other. In such an arrangement, the exemplarymethod 300 may be a continuation of the exemplary method 200.

In one or more embodiments, the dynamic receiving of the first series oftransactions (e.g., Step 305) may be real-time, or substantiallyreal-time, for each transaction within the first series of transactions.Additionally, or alternatively, the dynamic receiving of the firstseries of transactions (e.g., Step 305) may be conducted at apredetermined interval. For example, at midnight of each day, the issuerserver 104 may retrieve all transactions made by the first user duringthe 24-hour interval, in a series of transactions sorted from oldest tonewest, from a data source such as issuer database 106.

Next, as shown in FIG. 3, the first series of transactions may be inputinto the trained RNN (Step 310). As described above with respect to FIG.2, the RNN may have been trained to make associations between one ormore sequential patterns and a subcluster of users. Thus, the trainedRNN may be uniquely customized for classifying this particular observeduser (e.g., the first user with whom the first series of transactionsare associated) to a particular subcluster of users, based on the firstseries of transactions of the first user. Accordingly, the trained RNNmay be used to classify the first user into a subcluster (Step 315). Theoutput of the classification step may be, for example, one or moreprobability values for whether this user belongs to certain subclusters.For example, the output may indicate that according to the first seriesof transactions, the first user has a 90% chance of belonging to thesubcluster with credit score less than 700, and 10% chance of belongingto the subcluster with credit score at or higher than 700. The outputalso may be a selection or identification of one subcluster, which hasthe highest likelihood of having the first user as a member.

With the output from the classification step, the issuer server 104 mayproceed to determine whether a model user is necessary based on thefirst series of transactions of the first user (Step 320). A model usermay be necessary if the trained RNN indicates, with a reasonablecertainty, that the first series of transactions represents a highlikelihood that the first user is being a poor decision maker at thistime (e.g., the trained RNN associates the first series of transactionswith a subcluster representing the poor fiscal spending behaviors). Asdescribed in more detail below, retrieval of a model user may providebenchmark data in automatically and intelligently formulating aresolution for the first user.

If the issuer server 104 determines that a model user is not necessary(Step 320: No), the issuer server 104 may end the process for seeking aresolution pertaining to the first series of transactions (Step 325).For example, if the first series of transactions is classified at Step315 to be transactions representing good or successful fiscal spendingbehaviors (e.g., belonging to a subcluster with a relatively high rangeof credit scores), then the issuer server 104 may determine that a modeluser is not necessary. This filtering step may significantly reduceconsumption of computing resources of the issuer server 104 (e.g.,processor availability, power, memory, bandwidth, etc.), and ensure thatthe computing resources are utilized only for formulating criticalresolutions. In making this determination, the threshold and/or criteriafor determining which subclusters are deemed to necessitate a model usermay be predetermined parameters. For example, subclusters deemed torepresent poor fiscal decisions, for the purpose of this determination,may be predetermined to be any subcluster indicative of users with acredit score less than 700, and a threshold for necessitating a modeluser may be predetermined to be 80% or greater on the likelihood ofbelonging to such a subcluster.

If the issuer server 104 determines that a model user is necessary (Step320: Yes), the issuer server 104 may search for a model user (Step 330).A model user may be a user (1) whose data set comprises at least someattributes which are identical, or similar above a certain degree, tothe first user, and (2) also belongs to a model subcluster. The datacollection from which a model user is selected may be the training dataset of the RNN, which may already be classified using clusters andsubclusters. Additionally, or alternatively, the data collection may beanother set of user data sets, such as a superset of the training dataset, big data pertaining to the issuer of the transaction instrument, orany other group of user data sets in the issuer server 104 or issuerdatabase 106 indicative of the quality of fiscal decisions made byusers.

As noted above, a model user may be a user whose data set comprises atleast some attributes which are at least partially identical, or similarabove a certain degree, to the first user. For example, a model user mayhave a history of a sequence of transactions that may be identical inone or more aspects to the first series of transactions of the firstuser, such as the first user's recent transactions having a series of 12gambling charges within 24 hours and the model user's history having aseries of 10 gambling charges within 24 hours. In selecting a modeluser, the threshold or criteria for determining that the model user'sattributes are “partially identical” or “similar above a certain degree”to the attributes of a first user may be predetermined parameters. Forexample, a numerical attribute of the model user being within a rangebetween 20% above and 20% below a numerical attribute of the first usermay be predetermined to be “partially identical” or “similar above acertain degree.” Additionally, or alternatively, a model user may beselected by collecting a pool of candidate user data sets from theplurality of user data sets, ranking the candidate user data sets byquantified similarity metrics (e.g., percentage difference againstattributes of the first user), and selecting the top ranked user dataset.

Additional requirements for selection of a model user may be that (i)the series of similar transactions is not currently ongoing, and (ii)the model user is currently placed into a model subcluster despitehaving the history of similar transactions with the observed user. Forexample, a candidate model user may meet the first requirement (e.g.,having similar attributes in transaction history as that of the firstuser), but may fail to meet the second requirement because the candidatemodel user has not been placed into a model subcluster. As anotherexample, a candidate model user who has met the first requirement (e.g.,having similar attributes in transaction history as that of the firstuser) based on history, may be selected as the model user if the issuerserver 104 confirms that this candidate is now classified in a modelsubcluster. As described with respect to the exemplary method 200depicted in FIG. 2 and the example scheme 400B of FIG. 4B, modelsubclusters 441 and 442 may be particular subclusters designated andrecorded as model subclusters in issuer database 106 or any other memorydevice accessible by issuer server 104. The issuer server 104 maydesignate subclusters with quality metrics (e.g., credit score, accountbalance, available credit, percentage of credit used of users in each ofthe one or more clusters, etc.) that are higher than predeterminedthresholds, as model subclusters.

After selecting the model user, the issuer server 104 may generate anindicator of a resolution for the first user, based on the model user,the identical or similar series of transactions found in the modeluser's history, and the first series of transactions of the first user(Step 335). The indicator, for example, may be any data set whichincludes one or more relevant contents of both (i) the first series oftransactions of the first user and (ii) the identical or similar seriesof transactions found in the model user's history. An example indicatorof a resolution may be stored as shown in Table 1.

TABLE 1 FIRST USER TRANSACTION MODEL USER ATTRIBUTES transaction casinotransaction casino location location spending category gambling spendingcategory gambling spending subtotal $880.00 spending subtotal $250.00spending category Alcohol spending category alcohol spending subtotal$342.00 spending subtotal  $50.00 total spent $1,222.00   total spent$300.00 subcluster credit subcluster credit attribute score < 600attribute score > 800

After generating the indicator of resolution, the issuer server mayconvert the indicator to a natural language statement (Step 340). Thisconversion may occur when the issuer server 104 implements a naturallanguage processing (NLP) engine using the generated indicator, via NLPtechniques or algorithms such as a rule-based NLP, a statistical NLP, orany other known NLP techniques capable of adding natural language syntaxand words of a predetermined language (e.g., English) to the raw dataset forth by the indicator. For example, the indicator shown in Table 1may be converted to the following natural language statement: “Wenoticed that you have been spending a lot of money in the past 12 hoursat a casino. Let's stop and look at another customer's casino spending.Mark (not real name) has a credit score above 800, which is excellent.When Mark went to a casino, he only spent $50 on alcohol and $250 ongambling, while you have spent $342 so far tonight on alcohol and $880on gambling. We suggest you take a cue from Mark!”

After the conversion to the natural language statement is complete, theissuer server 104 may cause or initiate a display of the naturallanguage statement to the user device 112 of the first user (Step 345).In some implementations, any user 108 may intentionally and voluntarilyset a user preference at an application of the user device 112 such thatthe user's fiscal spending is regularly monitored, analyzed by anartificial intelligence, and potentially lead to a notification to theuser 108, in accordance with the exemplary method 300. Alternatively, anapplication of the user device 112 may be programmed to perform theexemplary method 300 by its original setting, such that the application,by default, delivers the user 108 with a virtual assistant whichconstantly monitors, using artificial intelligence, and automaticallynotifies the user 108 using uniquely customized resolutions. Whether animplementation of the exemplary method 300 is voluntary or involuntary,a recurring use of a specifically trained RNN, execution of a rule-basedsearch algorithm for identification of a model user, and generation of auniquely-tailored message for the user 108 are integrated together toresult in improvements in RNN technologies, machine-learning-basedautomation of behavior monitoring tools, and front-end automatedtechnological services provided to users of transaction instruments.

FIG. 4A depicts an example scheme 400A of how users 401A-404B may begrouped into clusters and subclusters, according to one or moreembodiments. As described above with respect to FIG. 2, a generalcollection of users 431 may be grouped into clusters at a first level ofdata hierarchy, such as within cluster 421 indicative of those userswith annual income at or above a threshold value, and cluster 422indicative of those users with annual income below the threshold value.One or more predetermined criteria for grouping at this level mayinclude one or more of annual income, education level, family size, jobcategory, or any other criteria which represents a user classindependent of quality metrics of fiscal decisions. Subsequently, theclusters 421 and 422 may each be grouped into subclusters at a secondlevel of data hierarchy, such as a subcluster 411 indicative of userswith a credit score at or above a threshold value and another subcluster412 indicative of users with a credit score below the threshold value.The predetermined criteria for grouping may include one or more ofcredit score, an account balance, available credit, percentage of creditused, or any other metric which indicates a quality of fiscal decisionsmade by the user. In the example scheme 400A, users 401A-401B may begrouped under subcluster 411, users 402A-402C may be grouped undersubcluster 412, users 403A-403C may be grouped under subcluster 413, andusers 404A-404B may be grouped under subcluster 414, in the trainingdata set of the RNN. As described above with respect to FIG. 2, thisscheme may be implemented on a plurality of user data sets, byclustering, grouping, or labeling the user data sets according to theseclusters and subclusters, in one or more memory devices accessible byissuer server 104 such as issuer database 106.

FIG. 4B depicts an example scheme 400B of how subclusters may bepredetermined to be model subclusters, according to one or moreembodiments. As shown, the example scheme 400B groups the generalcollection of users 431 in the same manner as the scheme 400A, butadditionally illustrates designation of model clusters 441 and 442. Asshown in the example scheme 400B, subclusters 441 and 442 may berecorded as model subclusters, because they both represent users withcredit score (e.g., one or more metrics) being higher than 700 (e.g., apredetermined threshold for selecting model subclusters). The selectionof model subclusters may be recorded in issuer database 106, or anyother memory device accessible by issuer server 104. In the exemplaryscheme 400B, users 401A-401B may be grouped under subcluster 411, users402A-402C may be grouped under subcluster 412, users 403A-403C may begrouped under subcluster 413, and users 404A-404B may be grouped undersubcluster 414, in the training data set of the RNN. Of these users,users 401A, 401B, 403A, 403B, and 403C may be users who belong to modelsubclusters based on their quality metrics relating to fiscal decisions

FIG. 5 depicts a high-level functional block diagram of an exemplarycomputer device or system, in which embodiments of the presentdisclosure, or portions thereof, may be implemented, e.g., ascomputer-readable code. In some implementations, the issuer server 104(depicted in FIG. 1) may correspond to device 500. Additionally, oralternatively, a server system comprising the issuer server 104 and theissuer database 106 (depicted in FIG. 1) may correspond to device 500.Additionally, each of the exemplary computer servers, databases, userinterfaces, and methods described above with respect to FIGS. 1-4B canbe implemented in device 500 using hardware, software, firmware,tangible computer readable media having instructions stored thereon, ora combination thereof and may be implemented in one or more computersystems or other processing systems. Hardware, software, or anycombination of such may implement each of the exemplary systems, userinterfaces, and methods described above with respect to FIGS. 1-4B.

If programmable logic is used, such logic may be executed on acommercially available processing platform or a special purpose device.One of ordinary skill in the art may appreciate that embodiments of thedisclosed subject matter can be practiced with various computer systemconfigurations, including multi-core multiprocessor systems,minicomputers, mainframe computers, computers linked or clustered withdistributed functions, as well as pervasive or miniature computers thatmay be embedded into virtually any device.

For instance, at least one processor device and a memory may be used toimplement the above-described embodiments. A processor device may be asingle processor or a plurality of processors, or combinations thereof.Processor devices may have one or more processor “cores.”

Various embodiments of the present disclosure, as described above in theexamples of FIGS. 1-4B, may be implemented using device 500. Afterreading this description, it will become apparent to a person skilled inthe relevant art how to implement embodiments of the present disclosureusing other computer systems and/or computer architectures. Althoughoperations may be described as a sequential process, some of theoperations may in fact be performed in parallel, concurrently, and/or ina distributed environment, and with program code stored locally orremotely for access by single or multi-processor machines. In addition,in some embodiments the order of operations may be rearranged withoutdeparting from the spirit of the disclosed subject matter.

As shown in FIG. 5, device 500 may include a central processing unit(CPU) 520. CPU 520 may be any type of processor device including, forexample, any type of special purpose or a general-purpose microprocessordevice. As will be appreciated by persons skilled in the relevant art,CPU 520 also may be a single processor in a multi-core/multiprocessorsystem, such system operating alone, or in a cluster of computingdevices operating in a cluster or server farm. CPU 520 may be connectedto a data communication infrastructure 510, for example, a bus, messagequeue, network, or multi-core message-passing scheme.

Device 500 also may include a main memory 540, for example, randomaccess memory (RAM), and also may include a secondary memory 530.Secondary memory 530, e.g., a read-only memory (ROM), may be, forexample, a hard disk drive or a removable storage drive. Such aremovable storage drive may comprise, for example, a floppy disk drive,a magnetic tape drive, an optical disk drive, a flash memory, or thelike. The removable storage drive in this example reads from and/orwrites to a removable storage unit in a well-known manner. The removablestorage unit may comprise a floppy disk, magnetic tape, optical disk,etc., which is read by and written to by the removable storage drive. Aswill be appreciated by persons skilled in the relevant art, such aremovable storage unit generally includes a computer usable storagemedium having stored therein computer software and/or data.

In alternative implementations, secondary memory 530 may include othersimilar means for allowing computer programs or other instructions to beloaded into device 600. Examples of such means may include a programcartridge and cartridge interface (such as that found in video gamedevices), a removable memory chip (such as an EPROM, or PROM) andassociated socket, and other removable storage units and interfaces,which allow software and data to be transferred from a removable storageunit to device 500.

Device 500 also may include a communications interface (“COM”) 560.Communications interface 560 allows software and data to be transferredbetween device 500 and external devices. Communications interface 560may include a modem, a network interface (such as an Ethernet card), acommunications port, a PCMCIA slot and card, or the like. Software anddata transferred via communications interface 560 may be in the form ofsignals, which may be electronic, electromagnetic, optical, or othersignals capable of being received by communications interface 560. Thesesignals may be provided to communications interface 560 via acommunications path of device 500, which may be implemented using, forexample, wire or cable, fiber optics, a phone line, a cellular phonelink, an RF link or other communications channels.

The hardware elements, operating systems and programming languages ofsuch equipment are conventional in nature, and it is presumed that thoseskilled in the art are adequately familiar therewith. Device 500 alsomay include input and output ports 550 to connect with input and outputdevices such as keyboards, mice, touchscreens, monitors, displays, etc.Of course, the various server functions may be implemented in adistributed fashion on a number of similar platforms, to distribute theprocessing load. Alternatively, the servers may be implemented byappropriate programming of one computer hardware platform.

The systems, apparatuses, devices, and methods disclosed herein aredescribed in detail by way of examples and with reference to thefigures. The examples discussed herein are examples only and areprovided to assist in the explanation of the apparatuses, devices,systems, and methods described herein. None of the features orcomponents shown in the drawings or discussed below should be taken asmandatory for any specific implementation of any of these theapparatuses, devices, systems, or methods unless specifically designatedas mandatory. For ease of reading and clarity, certain components,modules, or methods may be described solely in connection with aspecific figure. In this disclosure, any identification of specifictechniques, arrangements, etc. are either related to a specific examplepresented or are merely a general description of such a technique,arrangement, etc. Identifications of specific details or examples arenot intended to be, and should not be, construed as mandatory orlimiting unless specifically designated as such. Any failure tospecifically describe a combination or sub-combination of componentsshould not be understood as an indication that any combination orsub-combination is not possible. It will be appreciated thatmodifications to disclosed and described examples, arrangements,configurations, components, elements, apparatuses, devices, systems,methods, etc. can be made and may be desired for a specific application.Also, for any methods described, regardless of whether the method isdescribed in conjunction with a flow diagram, it should be understoodthat unless otherwise specified or required by context, any explicit orimplicit ordering of steps performed in the execution of a method doesnot imply that those steps must be performed in the order presented butinstead may be performed in a different order or in parallel.

Throughout this disclosure, references to components or modulesgenerally refer to items that logically can be grouped together toperform a function or group of related functions. Like referencenumerals are generally intended to refer to the same or similarcomponents. Components and modules can be implemented in software,hardware, or a combination of software and hardware. The term “software”is used expansively to include not only executable code, for examplemachine-executable or machine-interpretable instructions, but also datastructures, data stores and computing instructions stored in anysuitable electronic format, including firmware, and embedded software.The terms “information” and “data” are used expansively and includes awide variety of electronic information, including executable code;content such as text, video data, and audio data, among others; andvarious codes or flags. The terms “information,” “data,” and “content”are sometimes used interchangeably when permitted by context.

It is intended that the specification and examples be considered asexemplary only, with a true scope and spirit of the disclosure beingindicated by the following claims.

1-20. (canceled)
 21. A computer-implemented method for training andusing a neural network for subcluster classification, the methodcomprising: receiving or generating, by one or more processors, aplurality of user data sets of users, wherein each user data set in theplurality of user data sets comprises a user identification data of auser and a detailed user data of the user; grouping the plurality of theuser data sets, by the one or more processors, into one or more clustersof user data sets; grouping, by the one or more processors, each of theone or more clusters into a plurality of subclusters; identifying, bythe one or more processors, at least one model subcluster from theplurality of subclusters; receiving, by the one or more processors, arequest for a model user; and selecting, by the one or more processors,the model user from the at least one model subcluster, wherein the modeluser is selected based on a first series of transactions from a firstuser.
 22. The method of claim 21, wherein the grouping each of the oneor more clusters into the plurality of subclusters is based on a metric.23. The method of claim 22, wherein the metric associated with theidentified at least one model subcluster from the plurality ofsubclusters exceeds a predetermined threshold.
 24. The method of claim23, wherein the metric is based on one or more of a credit score, anaccount balance, an available credit, or a percentage of credit used ofusers in each of the one or more subclusters.
 25. The method of claim21, wherein the method further comprises: based on the model user,generating, by the one or more processors, an indicator of a resolutionassociated with the model user.
 26. The method of claim 25, wherein thegenerating the indicator of the resolution further comprises convertingthe indicator into a natural language statement.
 27. The method of claim26, wherein the method further comprises: displaying, by the one or moreprocessors, the natural language statement on a device associated withthe first user.
 28. The method of claim 21, wherein the grouping of theplurality of the user data sets into one or more clusters of user datasets of users is based on one or more of an annual income, an educationlevel, a family size, or a job category of the users.
 29. The method ofclaim 21, wherein the step of receiving or generating a plurality ofuser data sets of users further comprises: removing, by the one or moreprocessors, personally identifiable information from each of theplurality of user data sets.
 30. A computer system for training andusing a neural network for subcluster classification, the systemcomprising: a memory having processor-readable instructions storedtherein; and at least one processor configured to access the memory andexecute the processor-readable instructions, which when executed by theprocessor configures the processor to perform a plurality of functions,including functions for: receiving or generating a plurality of userdata sets of users, wherein each user data set in the plurality of userdata sets comprises a user identification data of a user and a detaileduser data of the user; grouping the plurality of the user data sets intoone or more clusters of user data sets; grouping each of the one or moreclusters into a plurality of subclusters; identifying at least one modelsubcluster from the plurality of subclusters; receiving a request for amodel user; and selecting the model user from the at least one modelsubcluster, wherein the model user is selected based on a first seriesof transactions from a first user.
 31. The system of claim 30, whereinthe grouping each of the one or more clusters into the plurality ofsubclusters is based on a metric.
 32. The system of claim 31, whereinthe metric associated with the identified at least one model subclusterfrom the plurality of subclusters exceeds a predetermined threshold. 33.The system of claim 32, wherein the metric is based on one or more of acredit score, an account balance, an available credit, or a percentageof credit used of users in each of the one or more subclusters.
 34. Thesystem of claim 30, wherein the plurality of functions furthercomprises: based on the model user, generating an indicator of aresolution associated with the model user.
 35. The system of claim 34,wherein the generating the indicator of the resolution further comprisesconverting the indicator into a natural language statement.
 36. Thesystem of claim 35, wherein the plurality of functions furthercomprises: displaying the natural language statement on a deviceassociated with the first user.
 37. The method of claim 30, wherein thegrouping of the plurality of the user data sets into one or moreclusters of user data sets of users is based on one or more of an annualincome, an education level, a family size, or a job category of theusers.
 38. The system of claim 30, wherein the receiving or generating aplurality of user data sets of users further comprises: removingpersonally identifiable information from each of the plurality of userdata sets.
 39. The method of claim 37, wherein the grouping of the eachof the one or more clusters into a plurality of subclusters is based onone or more of credit score, an account balance, available credit, orpercentage of credit used of users in each of the one or more clusters.40. A computer-implemented method for training and using a neuralnetwork for subcluster classification, the method comprising: receivingor generating, by one or more processors, a plurality of user data setsof users, wherein each user data set in the plurality of user data setscomprises a user identification data of a user and a detailed user dataof the user, and wherein receiving or generating the plurality of userdata sets includes removing, by the one or more processors, personallyidentifiable information from each of the plurality of user data sets;grouping the plurality of the user data sets, by the one or moreprocessors, into one or more clusters of user data sets, wherein thegrouping of the plurality of the user data sets into one or moreclusters of user data sets is based on one or more of an annual income,an education level, a family size, or a job category of the users;grouping, by the one or more processors, each of the one or moreclusters into a plurality of subclusters; identifying, by the one ormore processors, at least one model subcluster from the plurality ofsubclusters; receiving, by the one or more processors, a request for amodel user; selecting, by the one or more processors, the model userfrom the at least one model subcluster, wherein the model user isselected based on a first series of transactions from a first user;based on the model user, generating, by the one or more processors, anindicator of a resolution associated with the model user, wherein thegenerating the indicator of the resolution further comprises convertingthe indicator into a natural language statement; and displaying, by theone or more processors, the natural language statement on a deviceassociated with the first user.